package com.smartcommunity.service.common.impl;

import com.smartcommunity.bean.entity.SysEnum;
import com.smartcommunity.bean.model.Result;
import com.smartcommunity.dao.common.SystemEnumDao;
import com.smartcommunity.service.common.SystemEnumService;
import com.smartcommunity.utils.StringUtils;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections.map.HashedMap;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.ArrayList;
import java.util.List;
import java.util.Map;

@Service
@Slf4j
public class SystemEnumImpl implements SystemEnumService {

	@Autowired
	private SystemEnumDao systemEnumDao;

    @Override
    public Result selectEnumList() {
        return Result.ok(systemEnumDao.selectEnumList());
    }

    @Override
    public Result selectEnumListMap() {
        List<SysEnum> enumList = systemEnumDao.selectEnumList();
        Map<String,List<SysEnum>> resultMap = new HashedMap();
        if(enumList!=null&&enumList.size()>0){
            for (SysEnum item: enumList) {
                String parmType = item.getType();
                if(StringUtils.isNotEmpty(parmType)){
                    if(!resultMap.containsKey(parmType)){
                        resultMap.put(parmType,new ArrayList<>());
                    }
                    resultMap.get(parmType).add(item);
                }
            }
        }
        return  Result.ok(resultMap);
    }
}
